/*
    数据集管理相关的API请求函数
*/
import request from '@/utils/request'

const api_base = 'http://localhost:5000'

export default {
    //     async fetchDatasets(params) {
    //         try {
    //             const response = await request({
    //                 url: `${api_base}/datasets/info`,
    //                 method: 'get',
    //                 params: {
    //                     page: params?.page || 1,
    //                     limit: params?.limit || 10,
    //                     name: params?.searchName || '',
    //                     status: params?.filterStatus || ''
    //                 }
    //             })
    //             return response
    //         } catch (error) {
    //             throw new Error(`API Error: ${error.response?.data?.error || error.message}`)
    //         }
    //     },
    // 获取数据集列表（带分页）
    fetchDatasets(params) {
        return request({
            url: `${api_base}/datasets/info`,
            method: 'get',
            params: {
                page: params.page || 1,
                limit: params.limit || 10,
                name: params.name || '',
                status: params.status || ''
            }
        })
    },

    // 创建数据集（含文件上传）
    createDataset(formData) {
        return request({
            url: `${api_base}/datasets/create`,
            method: 'post',
            data: formData
        })
    },

    // 更新数据集元信息
    updateDataset(id, data) {
        return request({
            url: `${api_base}/datasets/${id}`,
            method: 'put',
            data: data
        })
    },

    // 删除数据集
    deleteDataset(id) {
        return request({
            url: `${api_base}/datasets/${id}`,
            method: 'delete'
        })
    },

    // 验证数据集
    verifyDataset(id) {
        return request({
            url: `${api_base}/datasets/${id}/verify`,
            method: 'post'
        })
    },

    // 下载数据集
    downloadDataset(id) {
        return request({
            url: `${api_base}/datasets/${id}/download`,
            method: 'get',
            responseType: 'blob'
        })
    }
}